MDM Calculate Usage Description This section includes detailed descriptions of the steps involved in the MDM Calculate Usage business process, including: • 1.0 Determine Usage Subscription (US) ID or External ID • 1.1 Populate Required Fields and Usage Periods • 1.2 Request to Add Usage Transaction • 1.3 Receive Usage Transaction Request • 1.4 Determine Usage Subscription ID • 1.5 Determine Processing Method via Usage Recipient • 1.6 Analyze Error Determine Error(s) Via Validation(s) • 1.7 Create UT Seeder in "Error" • 1.8 Determine Usage Transaction Period • 1.9 Create To Do • 2.0 Select Measurement Cycles for a Specific Date • 2.1 Create Measurement Cycle Schedule Route in 'Pending' Status • 2.2 Evaluate SP Measurement Cycle Schedule Route • 2.3 Create SP/Measurement Cycle Schedule Route in Pending Status • 2.4 Identify SP/Measurement Cycle Schedule Route in Pending and Update to Complete state • 2.5 Check if Device installed in SP(s) • 2.6 Determine Usage Subscription(s) linked to the SP • 2.7 Determine Processing Method via Usage Recipient • 2.8 Check if UT exists • 2.9 Create Error • 3.0 Create UT in “Pending” State • 3.1 Update UT to 'Calculate' State • 3.2 Determine UT Start and End Date/Time(s) • 3.3 Update UT to Calculation Deferred State • 3.4 Evaluate UT in "Calculation Deferred" and Update to "Calculation" State • 3.5 Determine the Effective Usage Group(s) • 3.6 Build Usage Period List via Date Breaks • 3.7 Create Sub UTs and Update Current UT to 'Calculation in Progress' State • 3.8 Initiate Usage Processor • 3.8.1 Retrieve Usage Rules for the Usage Group • 3.8.2 Check Eligibility of Usage Rule • 3.8.3 Process Usage Rule • 3.8.4 Determine Referred Usage Group • 3.8.5 Validate Configuration • 3.8.6 Validate Inputs • 3.8.7 Select Measuring Component(s) • 3.8.8 4.2.1.1 MDM.Upload Device Measurements Estimation IMD • 3.8.9 Calculate SQ, UOM, and/or TOU • 3.8.10 Validate Configuration • 3.8.11 Validate Inputs • 3.8.12 Retrieve Aggregate Measurement Data • 3.8.13 Apply SUM or MAX function to Interval Curve • 3.8.14 Validate Configuration • 3.8.15 Validate Inputs • 3.8.16 Apply Math Function or Expression to Variables • 3.8.17 Validate Configuration • 3.8.18 Validate Inputs • 3.8.19 Retrieve and Aggregate Measurement Data • 3.8.20 Apply Mapping • 3.8.21 Apply SUM or MAX Math Function • 3.8.22 Validate Configuration • 3.8.23 Validate Inputs • 3.8.24 Determine the usage to validate and Tolerance Value • 3.8.25 Perform Comparison • 3.8.26 Create Error • 3.9 Update UT to "Issue Detected" State • 4.0 Create To Do • 4.1 Create Approval To Do • 4.2 Analyze To Do and Evaluate Usage • 4.3 Request to Recalculate Usage • 4.4 Request to Approve Usage • 4.5 Update UT to "Approved" state • 4.6 Update UT to "Sent" Status • 4.7 Determine Usage Recipient • 4.8 Determine Processing Method for UT Notification • 4.9 Create an Outbound Message to Send Usage • 5.0 Update Usage Transaction with Batch Code and Batch Run Number • 5.1 Process and Send Usage Transaction • 5.2 Receive Usage • 5.3 Create Sub-UT in Pending State • 5.4 Update Sub-UT to Calculate State • 5.5 Determine UT Start and End Date/Time(s) • 5.6 Build Usage Period List • 5.7 Update UT to Issue Detected State • 5.8 Create To Do • 5.9 Update Sub-UT to Calculated State • 6.0 Execute the Monitor Algorithm(s) of Parent UT's Current Status • 6.1 Update Usage Transaction to Discarded State • 6.2 Copy Sub UT Usage Calculations to the UT • 6.3 Create Approval To Do • 6.4 Update UT to Sent Status • 6.5 Request to notify Usage Recipient Of Subsequent Correction • 6.6 IMD Received that Overlaps Prior Sent Usage Transaction • 6.7 Determine Usage Recipient • 6.8 Determine Processing Method for UT Subsequent Correction • 6.9 Create an Outbound Message to Send Usage Correction Notification • 7.0 Receive Notification • 7.1 Analyze Exception and Work To Do • 7.2 Request to Complete To Do • 7.3 Complete To Do • 7.4 Evaluate Criteria to Run Automated Retry Process • 7.5 Identify UT in Error Status and Transition to Next Status • 7.6 Request to Reprocess • 7.7 Update UT Seeder to Reprocessed Status • 7.8 Attempt to Create New Usage Transaction Seeder • 7.9 Request to Discard • 8.0 Update UT Seeder to Discarded Status • 8.1 Request to Recalculate • 8.2 Update UT in Issue Detected Status to Calculate Status • 8.3 Request to Discard • 8.4 Update Usage Transaction to Discarded Status • 8.5 Determine Usage Recipient • 8.6 Determine Processing Method for UT Notification • 8.7 Create an Outbound Message to Send Usage • 8.8 Update Usage Transaction with Batch Code and Batch Run Number • 8.9 Send Error Notification • 9.0 Receive Error • 9.1 Evaluate Criteria to Run Automated Retry Process • 9.2 Identify UT in Issue Detected Status • 9.3 Transition Parent Usage Transaction to Next Status